package com.beidasoft.web.vo.performanceAssessment;

import com.beidasoft.web.model.performanceAssessment.PointerBatchSubItem;

import java.util.List;
import java.util.Map;

/**
 * 批次指标项信息
 * Created by ${WangPeiqiang} on 2016/11/22.
 */
public class PointerBatchSubItemBean extends PointerBatchSubItem {
    private String pointerSubItemTypeValue; //指标级别值
    private String pointerTargetTypeValue;  //指标类别值

    private String subItemIdFirst;          //指标ID(一级指标)
    private String subItemNameFirst;        //指标项名称
    private String subItemTypeFirst;        //指标级别
    private Integer subItemRateFirst;       //指标评分占比
    private Integer countFirst;             //
    private String rateFirst;               //

    private String subItemIdSecond;         //指标ID(二级指标)
    private String subItemNameSecond;       //指标项名称
    private String subItemTypeSecond;       //指标级别
    private Integer subItemRateSecond;      //指标评分占比
    private Integer countSecond;            //
    private String rateSecond;              //
    private String checkBoxIdSecond;        //

    private String subItemIdThird;          //指标ID(三级指标)
    private String subItemNameThird;        //指标项名称
    private String subItemTypeThird;        //指标级别
    private Integer subItemRateThird;       //指标评分占比
    private Integer countThird;             //
    private String rateThird;               //
    private String checkBoxIdThird;         //

    private int size;                       //

    private String[] subItemIdFirsts;          //指标ID(一级指标)
    private String[] subItemNameFirsts;        //指标项名称
    private Integer[] subItemRateFirsts;       //指标评分占比

    private String[] subItemIdSeconds;         //指标ID(二级指标)
    private String[] subItemNameSeconds;       //指标项名称
    private Integer[] subItemRateSeconds;      //指标评分占比

    private String[] subItemIdThirds;          //指标ID(三级指标)
    private String[] subItemNameThirds;        //指标项名称
    private Integer[] subItemRateThirds;       //指标评分占比

    private Integer checked;                    //被选中标记
    private String batchRecordId;               //引用批次ID
    private Integer historyChecked;             //引用批次部门回显
    private Integer objectCircle;               //当前对象设置次序

    private String[] organizationNames;          //部门ID

    private String pointerDimensionTypeValue; // 指标维度值

    private Map<String,List<PointerBatchObjectBean>> objectMap; //对象和部门集合

    private Map<String,List<String>> organizationMap; //部门集合

    private String[] subItemIds;  // 指标项ids

    private Integer[] subItemRates;       //指标评分占比

    public Map<String, List<String>> getOrganizationMap() {
        return organizationMap;
    }

    public void setOrganizationMap(Map<String, List<String>> organizationMap) {
        this.organizationMap = organizationMap;
    }

    public Map<String, List<PointerBatchObjectBean>> getObjectMap() {
        return objectMap;
    }

    public void setObjectMap(Map<String, List<PointerBatchObjectBean>> objectMap) {
        this.objectMap = objectMap;
    }

    public String[] getOrganizationNames() {
        return organizationNames;
    }

    public void setOrganizationNames(String[] organizationNames) {
        this.organizationNames = organizationNames;
    }

    public String getBatchRecordId() {
        return batchRecordId;
    }

    public void setBatchRecordId(String batchRecordId) {
        this.batchRecordId = batchRecordId;
    }

    public Integer getHistoryChecked() {
        return historyChecked;
    }

    public void setHistoryChecked(Integer historyChecked) {
        this.historyChecked = historyChecked;
    }

    public Integer getObjectCircle() {
        return objectCircle;
    }

    public void setObjectCircle(Integer objectCircle) {
        this.objectCircle = objectCircle;
    }

    public Integer getChecked() {
        return checked;
    }

    public void setChecked(Integer checked) {
        this.checked = checked;
    }

    public String[] getSubItemIdFirsts() {
        return subItemIdFirsts;
    }

    public void setSubItemIdFirsts(String[] subItemIdFirsts) {
        this.subItemIdFirsts = subItemIdFirsts;
    }

    public String[] getSubItemNameFirsts() {
        return subItemNameFirsts;
    }

    public void setSubItemNameFirsts(String[] subItemNameFirsts) {
        this.subItemNameFirsts = subItemNameFirsts;
    }

    public Integer[] getSubItemRateFirsts() {
        return subItemRateFirsts;
    }

    public void setSubItemRateFirsts(Integer[] subItemRateFirsts) {
        this.subItemRateFirsts = subItemRateFirsts;
    }

    public String[] getSubItemIdSeconds() {
        return subItemIdSeconds;
    }

    public void setSubItemIdSeconds(String[] subItemIdSeconds) {
        this.subItemIdSeconds = subItemIdSeconds;
    }

    public String[] getSubItemNameSeconds() {
        return subItemNameSeconds;
    }

    public void setSubItemNameSeconds(String[] subItemNameSeconds) {
        this.subItemNameSeconds = subItemNameSeconds;
    }

    public Integer[] getSubItemRateSeconds() {
        return subItemRateSeconds;
    }

    public void setSubItemRateSeconds(Integer[] subItemRateSeconds) {
        this.subItemRateSeconds = subItemRateSeconds;
    }

    public String[] getSubItemIdThirds() {
        return subItemIdThirds;
    }

    public void setSubItemIdThirds(String[] subItemIdThirds) {
        this.subItemIdThirds = subItemIdThirds;
    }

    public String[] getSubItemNameThirds() {
        return subItemNameThirds;
    }

    public void setSubItemNameThirds(String[] subItemNameThirds) {
        this.subItemNameThirds = subItemNameThirds;
    }

    public Integer[] getSubItemRateThirds() {
        return subItemRateThirds;
    }

    public void setSubItemRateThirds(Integer[] subItemRateThirds) {
        this.subItemRateThirds = subItemRateThirds;
    }

    public int getSize() {
        return size;
    }

    public void setSize(int size) {
        this.size = size;
    }

    public String getCheckBoxIdSecond() {
        return checkBoxIdSecond;
    }

    public void setCheckBoxIdSecond(String checkBoxIdSecond) {
        this.checkBoxIdSecond = checkBoxIdSecond;
    }

    public String getCheckBoxIdThird() {
        return checkBoxIdThird;
    }

    public void setCheckBoxIdThird(String checkBoxIdThird) {
        this.checkBoxIdThird = checkBoxIdThird;
    }

    public String getRateFirst() {
        return rateFirst;
    }

    public void setRateFirst(String rateFirst) {
        this.rateFirst = rateFirst;
    }

    public String getRateSecond() {
        return rateSecond;
    }

    public void setRateSecond(String rateSecond) {
        this.rateSecond = rateSecond;
    }

    public String getRateThird() {
        return rateThird;
    }

    public void setRateThird(String rateThird) {
        this.rateThird = rateThird;
    }

    public Integer getCountFirst() {
        return countFirst;
    }

    public void setCountFirst(Integer countFirst) {
        this.countFirst = countFirst;
    }

    public Integer getCountSecond() {
        return countSecond;
    }

    public void setCountSecond(Integer countSecond) {
        this.countSecond = countSecond;
    }

    public Integer getCountThird() {
        return countThird;
    }

    public void setCountThird(Integer countThird) {
        this.countThird = countThird;
    }

    public String getSubItemIdFirst() {
        return subItemIdFirst;
    }

    public void setSubItemIdFirst(String subItemIdFirst) {
        this.subItemIdFirst = subItemIdFirst;
    }

    public String getSubItemNameFirst() {
        return subItemNameFirst;
    }

    public void setSubItemNameFirst(String subItemNameFirst) {
        this.subItemNameFirst = subItemNameFirst;
    }

    public String getSubItemTypeFirst() {
        return subItemTypeFirst;
    }

    public void setSubItemTypeFirst(String subItemTypeFirst) {
        this.subItemTypeFirst = subItemTypeFirst;
    }

    public Integer getSubItemRateFirst() {
        return subItemRateFirst;
    }

    public void setSubItemRateFirst(Integer subItemRateFirst) {
        this.subItemRateFirst = subItemRateFirst;
    }

    public String getSubItemIdSecond() {
        return subItemIdSecond;
    }

    public void setSubItemIdSecond(String subItemIdSecond) {
        this.subItemIdSecond = subItemIdSecond;
    }

    public String getSubItemNameSecond() {
        return subItemNameSecond;
    }

    public void setSubItemNameSecond(String subItemNameSecond) {
        this.subItemNameSecond = subItemNameSecond;
    }

    public String getSubItemTypeSecond() {
        return subItemTypeSecond;
    }

    public void setSubItemTypeSecond(String subItemTypeSecond) {
        this.subItemTypeSecond = subItemTypeSecond;
    }

    public Integer getSubItemRateSecond() {
        return subItemRateSecond;
    }

    public void setSubItemRateSecond(Integer subItemRateSecond) {
        this.subItemRateSecond = subItemRateSecond;
    }

    public String getSubItemIdThird() {
        return subItemIdThird;
    }

    public void setSubItemIdThird(String subItemIdThird) {
        this.subItemIdThird = subItemIdThird;
    }

    public String getSubItemNameThird() {
        return subItemNameThird;
    }

    public void setSubItemNameThird(String subItemNameThird) {
        this.subItemNameThird = subItemNameThird;
    }

    public String getSubItemTypeThird() {
        return subItemTypeThird;
    }

    public void setSubItemTypeThird(String subItemTypeThird) {
        this.subItemTypeThird = subItemTypeThird;
    }

    public Integer getSubItemRateThird() {
        return subItemRateThird;
    }

    public void setSubItemRateThird(Integer subItemRateThird) {
        this.subItemRateThird = subItemRateThird;
    }

    public String getPointerSubItemTypeValue() {
        return pointerSubItemTypeValue;
    }

    public void setPointerSubItemTypeValue(String pointerSubItemTypeValue) {
        this.pointerSubItemTypeValue = pointerSubItemTypeValue;
    }

    public String getPointerTargetTypeValue() {
        return pointerTargetTypeValue;
    }

    public void setPointerTargetTypeValue(String pointerTargetTypeValue) {
        this.pointerTargetTypeValue = pointerTargetTypeValue;
    }

    public String getPointerDimensionTypeValue() {
        return pointerDimensionTypeValue;
    }

    public void setPointerDimensionTypeValue(String pointerDimensionTypeValue) {
        this.pointerDimensionTypeValue = pointerDimensionTypeValue;
    }

    public String[] getSubItemIds() {
        return subItemIds;
    }

    public void setSubItemIds(String[] subItemIds) {
        this.subItemIds = subItemIds;
    }

    public Integer[] getSubItemRates() {
        return subItemRates;
    }

    public void setSubItemRates(Integer[] subItemRates) {
        this.subItemRates = subItemRates;
    }

    //注意这里重写了equals方法
    @Override
    public boolean equals(Object obj){
        if(obj == null){
            return false;
        }else {
            if(this.getClass() == obj.getClass()){
                PointerBatchSubItemBean u = (PointerBatchSubItemBean) obj;
                if(this.getSubItemIdFirst().equals(u.getSubItemIdFirst()) ||
                        this.getSubItemIdSecond().equals(u.getSubItemIdSecond()) ||
                        this.getSubItemIdThird().equals(u.getSubItemIdThird()) ){
                    return true;
                }else{
                    return false;
                }

            }else{
                return false;
            }
        }
    }
}
